The MPEG-4 AVC video coding standard introduces an intra coding that is much more sophisticated than the preceding standards, because it involves a spatial compensation: it is not the source macroblock that is coded, but the difference between this source macroblock and the pixels originating from the adjacent macroblocks that are already coded.
Intra differential coding as luminance may be carried out on a single block 16×16 in size or on 16 independent blocks 4×4 in size. The number of possible predictions is extremely rich, since nine modes are defined for the 4×4 blocks and four modes are defined for the 16×16 blocks.
FIG. 1 represents schematically the various intra coding modes as luminance for 4×4 blocks. FIG. 2 represents the different intra coding modes as luminance for 16×16 blocks.
Document ITU-T Rec. H.264 (2002 E), also bearing the reference ISO/IEC FCD 14496-10, in chapter 8.5 entitled “intra prediction”, describes these different modes of coding. The figure uses the English terms of the standard so that it is easier to refer to. It should be noted that the pure intra mode does not exist; all the intra modes of the standard are differential modes. Intra coding as chrominance is carried out on a single block 8×8 in size, with a prediction chosen from the four possibilities defined for the 16×16 intra mode.
The intra coding decision is therefore of a considerably greater complexity than in the preceding standards. In addition to the computing complexity, the implementation of intra coding poses a problem of causality, since the adjacent pixels used in the predictions are reconstructed pixels, that is to say previously coded, in inter or intra, then decoded. The benchmark coding model of the standard, which is a generic model, describes a general syntax which does not take into account the constraints of operating in real time. The computing complexity and the causality link of intra coding are not the subject of this model.
When real time applications are intended, for example in standard television format, problems of processing time appear, due to the large number of coding modes to be tested. The coding of the macroblocks of the picture is carried out according to a television scanning, the test of the intra modes of the current macroblock can be carried out only after the preceding macroblock has been processed. The problem appears during the hardware implementation, the tests being carried out sequentially.